package com.citysky.course.service;

import com.citysky.course.domain.CourseDO;
import com.citysky.course.domain.LessonDO;
import com.citysky.course.domain.LessonDataDO;

import java.util.List;

/**
 * @author Ralf
 * @since 2018-11-23 16:20.
 * Copyright (c) 2015-2017 wlqq.com. All Rights Reserved.
 */
public interface CourseService {
    /**
     * 新建课程集合
     * @param course
     * @param lessonList
     * @return
     */
    int save(CourseDO course, List<LessonDO> lessonList);

    void addCourseLesson(Long courseId, Long lessonId);

    int addCourse(CourseDO course);

    int updateCourseInfo(CourseDO course);

    /**
     * 更新课程下的教学集合
     * @param courseId
     * @param lessonList
     */
    void updateCourseLesson(Long courseId, List<Long> lessonList);

    /**
     * 删除课程
     * @param courseId
     * @return
     */
    int deleteCourse(Long courseId);

    /**
     * 从课程中移除教学
     * @param courseId
     * @param lessonId
     * @return
     */
    int deleteLessonFormCourse(Long courseId , Long lessonId);


    int addLesson(LessonDO lesson, List<LessonDataDO> lessonDataList);

    int addLesson(Long lessonId, LessonDataDO lessonData);

    int updateLesson(LessonDO lesson);

    /**
     * 删除教学
     * @param lessonDO
     * @return
     */
    int deleteLesson(LessonDO lessonDO);



}
